home *** CD-ROM | disk | FTP | other *** search
/ BUG 1 / BUGCD1996_0708.ISO / pc / util / minilin / minilin.exe / USR / LIB / SETUP / SETMAKET.{_A < prev    next >
Text File  |  1994-02-15  |  5KB  |  123 lines

  1. #!/bin/sh
  2. dialog --title "CREATE CUSTOM TAGFILES" --yesno "Tagfiles are special files \
  3. found on the first disk of a series that can determine which packages are \
  4. installed and which are skipped. Deciding which files to install in advance \
  5. can speed up the installation process greatly. If you have not installed \
  6. Slackware Linux before, you should probably try installing using the \
  7. default tagfiles before you try making custom ones, because you won't see much \
  8. information about the package contents when creating your tagfiles. This \
  9. process assumes you already know which packages you want to install. \
  10. If you're not sure, back out now and just use the default tagfiles when \
  11. you install. \
  12. Do you want to create custom tagfiles?" 17 65
  13. if [ $? = 1 -o $? = 255 ]; then
  14.  exit
  15. fi
  16. dialog --title "ENTER CUSTOM TAGFILE EXTENSION" --inputbox "Now you must \
  17. enter a custom file extension. This will be used as the last part of the \
  18. filename for your new custom tagfiles. For example, I use '.pat' for my \
  19. custom extension, and my custom tagfiles on the first disk of each series \
  20. have the filename 'tagfile.pat'. Use any extension you like except .tgz or \
  21. .tar. The extension must consist of a period followed by exactly 3 \
  22. letters." 14 65 2> /tmp/SeTtagmake
  23. if [ $? = 1 -o $? = 255 -o ! "`cat /tmp/SeTtagmake | cut -b1`" = "." -o "`cat /tmp/SeTtagmake`" = "" ]; then
  24.  rm -f /tmp/SeTtagmake
  25.  exit
  26. fi
  27. TAGEXT="`cat /tmp/SeTtagmake`"
  28. while [ 0 ]; do
  29.  dialog --title "CUSTOMIZE A DISK SERIES" --menu "You may now \
  30. create a custom tagfile on the first disk of a disk series (make \
  31. sure it's not write protected!), or in the directory for such a \
  32. disk if you are installing from your hard drive. Select one of the \
  33. choices below." 13 65 3 \
  34. "/dev/fd0" "Create a custom tagfile on floppy drive 1" \
  35. "/dev/fd1" "Create a custom tagfile on floppy drive 2" \
  36. "Directory" "Create a tagfile in a disk's directory" 2> /tmp/SeTreturn
  37.  if [ $? = 1 -o $? = 255 ]; then
  38.   rm -f /tmp/SeTreturn
  39.   break
  40.  fi
  41.  CHOICE="`cat /tmp/SeTreturn`"
  42.  rm -f /tmp/SeTreturn
  43.  if [ "$CHOICE" = "/dev/fd0" -o "$CHOICE" = "/dev/fd1" ]; then
  44.   dialog --title "INSERT DISK IN DRIVE $CHOICE" --msgbox "Please insert the first disk of \
  45. a disk series you would like to make a custom tagfile for and press \
  46. ENTER. Be sure this disk is not write protected." 7 60
  47.   if [ $? = 255 ]; then
  48.    continue
  49.   fi
  50.   mount $CHOICE /mnt -t msdos
  51.   if [ ! $? = 0 ]; then
  52.    dialog --title "MOUNT FAILURE" --msgbox "Sorry, the disk could not be \
  53. mounted in drive $CHOICE as type msdos." 6 60
  54.    if mount | grep /mnt 1> /dev/null 2> /dev/null ; then
  55.     umount /mnt
  56.    fi
  57.    continue
  58.   fi
  59.   if [ -r /mnt/maketag ]; then
  60.    sh /mnt/maketag
  61.   else # no tagfile create script!
  62.    dialog --title "NO TAGFILE SCRIPT" --msgbox "Sorry, but a custom tagfile \
  63. cannot be created for this disk because it does not have a 'maketag' script. \
  64. The maketag script was introduced in Slackware 1.1.2, and provides the menu \
  65. of packages to select from. Currently there is no way to just look at the \
  66. disks and 'wing it', but maybe there will be eventually. You'll have to edit \
  67. the tagfile on this disk manually." 11 65
  68.    umount /mnt
  69.    continue 
  70.   fi
  71.   if [ ! -r /tmp/SeTnewtag ]; then
  72.    umount /mnt
  73.    continue
  74.   fi
  75.   cp /tmp/SeTnewtag /mnt/tagfile$TAGEXT
  76.   if [ $? = 0 ]; then
  77.    dialog --title "TAGFILE CREATED" --msgbox "Your custom \
  78. tagfile has been successfully created with the extension: \
  79. $TAGEXT" 8 40
  80.   else
  81.    dialog --title "COPY ERROR" --msgbox "Your custom tagfile could \
  82. not be copied to the disk. Please check to see if the disk is write \
  83. protected, or full, and then try again." 9 40
  84.   fi
  85.   umount /mnt
  86.  fi
  87.  if [ "$CHOICE" = "Directory" ]; then
  88.   dialog --title "CHOOSE DIRECTORY" --inputbox "Now you must enter the \
  89. directory for the first disk of the series for which you would like to \
  90. make a custom tagfile. This directory must be mounted somewhere under \
  91. the current filesystem." 11 65 2> /tmp/SeTreturn
  92.   if [ $? = 1 -o $? = 255 ]; then
  93.    rm -f /tmp/SeTreturn
  94.    continue
  95.   fi
  96.   DIR="`cat /tmp/SeTreturn`"
  97.   rm -f /tmp/SeTreturn
  98.   if [ ! -r $DIR/maketag ]; then
  99.    dialog --title "NO TAGFILE SCRIPT" --msgbox "Sorry, but a custom tagfile \
  100. cannot be created for this disk series because the directory you gave does \
  101. not have a 'maketag' script. \
  102. The maketag script was introduced in Slackware 1.1.2, and provides the menu \
  103. of packages to select from. Currently there is no way to just look at the \
  104. packages and 'wing it', but maybe there will be eventually. You'll have to \
  105. edit the tagfile in this directory manually." 11 65
  106.    continue
  107.   fi
  108.   sh $DIR/maketag
  109.   if [ ! -r /tmp/SeTnewtag ]; then
  110.    continue
  111.   fi
  112.   cp /tmp/SeTnewtag $DIR/tagfile$TAGEXT
  113.   if [ $? = 0 ]; then
  114.    dialog --title "TAGFILE CREATED" --msgbox "Your custom \
  115. tagfile has been successfully created with the extension: \
  116. $TAGEXT" 8 40
  117.   else
  118.    dialog --msgbox "I don't know what just happened, but something \
  119. screwed up." 6 40
  120.   fi
  121.  fi
  122. done
  123.